package com.grape.ciq.api.redbook.base;

import com.grape.ciq.api.redbook.ApiException;
import com.grape.ciq.plat.Shop;

public abstract class XHSClient {

    /**
     * 执行远程方法
     *
     * @param <T>
     * @param request
     * @param shopApp
     * @return
     * @throws com.grape.ciq.api.redbook.ApiException
     */
    public abstract <T extends XHSResponse> T execute(XHSRequest<T> request, Shop shopApp) throws ApiException;

    protected String baseUrl;

    protected String appkey;

    protected String appsecret;

    public String getBaseUrl() {
        return baseUrl;
    }

    public void setBaseUrl(String baseUrl) {
        this.baseUrl = baseUrl;
    }

    public String getAppkey() {
        return appkey;
    }

    public void setAppkey(String appkey) {
        this.appkey = appkey;
    }

    public String getAppsecret() {
        return appsecret;
    }

    public void setAppsecret(String appsecret) {
        this.appsecret = appsecret;
    }

}
